<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>


<!--
babel: 转语法 es6 => es5, let const => var
forEach()
map()
polyfill: 转 api
-->



<script>
  // var x = 10
  // var let const

  // var:
  // 1. 函数作用域（局部变量），全局变量
  // 2. 变量声明提升，（赋值不提升）、函数开头就会被处理
  // 3. 重复声明变量不报错

  // var d = new Date()

  // const 值类型是不能更改
  const person = {
    name: '张三',
  }
  person.name = 'zhangsan'
  console.log(person)

  // 内存地址 3456789ojhgfdfghjk
  /*
  let obj1 = {
    name: '张三',
    age: 18
  }
  let obj2 = obj1 // 同一个引用
  obj2.name = '李四'
  console.log('obj2.name', obj2.name) // 李四
  console.log('obj2.name', obj1.name) // 张三
  console.log('=============')
  console.log([] === [])
  console.log({} === {})*/


  function sayHi() {

    // const phone = '13288990077'
    // phone = ''



    // if (false) {
    //   var d = 'hahha'
    // }
    //
    // console.log(d)

    // var msg = 123
    // var msg = 'hhh'
    // let msg = 123
    // let msg = 'hhh'
    // console.log(msg)

    // var msg
    // console.log(msg)
    // msg = 'hello es6'

    /*
    msg = 'hello es6'
    console.log(msg)
    if (false) {
      var msg
    }*/
  }
  sayHi()



  /*
  if (true) {
    // let msg = 'hello'
    var msg = 'hello'
    console.log(msg)
  }
  console.log(msg)*/


  // for (let i = 0; i < 10; i++) {
  /*for (var i = 0; i < 10; i++) {
    console.log(i)
  }
  console.log(i)
*/
  /*
  function sayHi() {
    var msg = 'hello es6'
    console.log(msg)
  }
  console.log(msg)
  sayHi()*/







</script>

</body>
</html>